home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World Interactive 7
/
PC World Interactive 7.iso
/
program
/
qbprog.EXE
/
PCOPY.BAS
< prev
next >
Wrap
BASIC Source File
|
1995-10-15
|
3KB
|
126 lines
DECLARE SUB arkaplan ()
DECLARE SUB kutu (x%, y%, xx%, yy%, o%, f%)
DECLARE SUB animasyon ()
DECLARE SUB Show (x%, y%)
DECLARE FUNCTION Tus% ()
DECLARE FUNCTION ekranseg% ()
DEFINT A-Z
DIM SHARED MenuX, MenuY
VIEW PRINT 1 TO 25
CLS
animasyon
DO
IF Tus THEN EXIT DO
LOOP
END
SUB animasyon
arkaplan
FOR menu = 1 TO 10
Show menu, menu
FOR A! = 1 TO 500: NEXT
NEXT
MenuX = menu
MenuY = menu
Show MenuX, MenuY
END SUB
SUB arkaplan
SCREEN , , 3, 0
COLOR 9, 7
CLS
A$ = "Programlama Sanatì...Sürükle bìrak..."
A = LEN(A$)
FOR I = 0 TO 1840 / A
B = 80 - C
IF B <= A THEN
PRINT LEFT$(A$, B);
PRINT RIGHT$(A$, A - B);
C = A - B: D = C
ELSE
PRINT A$;
C = C + A
END IF
NEXT
DEF SEG = ekranseg + 256 * 3
FOR I = 3680 + D * 2 TO 4000 STEP A * 2
FOR y = 1 TO A
POKE I + (y - 1) * 2, ASC(MID$(A$, y, 1))
NEXT
NEXT
SCREEN , , 0
DEF SEG
END SUB
FUNCTION ekranseg
DEF SEG = 0
IF PEEK(&H449) = 7 THEN
ekranseg = &HB000
ELSE
ekranseg = &HB800
END IF
DEF SEG
END FUNCTION
SUB kutu (x, y, xx, yy, o, f)
COLOR o, f
q1$ = "╔" + STRING$((xx - x) - 1, "═") + "╗"
q2$ = "╚" + STRING$((xx - x) - 1, "═") + "╝"
q3$ = "║" + STRING$((xx - x) - 1, " ") + "║"
LOCATE y, x: PRINT q1$;
LOCATE yy, x: PRINT q2$;
FOR I = y + 1 TO yy - 1
LOCATE I, x: PRINT q3$;
NEXT
DEF SEG = ekranseg
FOR I = x TO xx
POKE ((yy) * 160 + (I) * 2 + 1), 8
NEXT
FOR I = y TO yy
TR = ((I) * 160 + (xx) * 2 + 1)
POKE TR, 8
NEXT
DEF SEG
END SUB
SUB Show (x, y)
menuAd$ = "[ Gezer Menu ]"
bilgi$ = "Cursor tuƒlarìna basìnìz"
PCOPY 3, 0
kutu x, y, x + 30, y + 6, 1, 3
COLOR 15, 3
FOR Secim = 1 TO 5
LOCATE y + Secim, x + 1
PRINT "Burasì;"; Secim; " Numaralì Seçiminiz"
NEXT
COLOR 1, 3
LOCATE y, x + 8: PRINT menuAd$
LOCATE y + 6, x + 3: PRINT bilgi$
END SUB
FUNCTION Tus
S = 0
A$ = INKEY$
IF A$ = "" THEN EXIT FUNCTION
IF ASC(A$) = 27 THEN Tus = 1: EXIT FUNCTION
IF LEN(A$) = 2 THEN
Z = ASC(RIGHT$(A$, 1))
SELECT CASE Z
CASE 72: IF MenuY > 2 THEN MenuY = MenuY - 2: S = 1
CASE 80: IF MenuY < 17 THEN MenuY = MenuY + 2: S = 1
CASE 75: IF MenuX > 2 THEN MenuX = MenuX - 5: S = 1
CASE 77: IF MenuX < 46 THEN MenuX = MenuX + 5: S = 1
CASE 79: MenuX = 46: S = 1
MenuY = 17
CASE 71: MenuY = 2: S = 1
MenuX = 2
END SELECT
IF S THEN Show MenuX, MenuY
END IF
END FUNCTION